Recently, a significant amount of effort has been devoted to constructing automated systems and processes for identifying images (e.g., photographs) that are visually similar to a sample image. Such automated systems and processes are desired for use, e.g., in order to identify any unauthorized uses of a particular photograph.
Conventional techniques directed toward this goal typically extract a set of “keypoints” (sometimes referred to as “attention points” or “interest points”) from each photograph, together with a set of information (e.g., a descriptor vector) describing each such keypoint. The keypoints typically are the distinctive points on the image, such as points on corners and edges. The keypoints and associated information are then compared for different images in order to determine whether the different images are visually similar. That is, given two similar photographs, the assumption is that a keypoint in the first photograph is likely to have a matching keypoint in the other. A representative conventional approach to determine the degree of similarity between two photographs P1 and P2 based on their sets of keypoints K1 and K2, respectively, requires a comparison between each point in K1 and each point in K2.